package jsyf.oa.entity.contract;

import com.alibaba.fastjson.JSONObject;

import javax.persistence.Entity;
import javax.persistence.Table;

import jsyf.oa.ientity.BaseEntity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * Created by Administrator on 2018/6/20 0020.
 */
@Entity
@Table(name = "t_con_main", schema = "oa", catalog = "")
public class ContractMainEntity extends BaseEntity implements Serializable {

    private String contractNo = "";//  `CONTRACT_NO`  '合同号',
    private String repaymentType = "";//  `REPAYMENT_TYPE`  '还款方式',
    private String createUserId = "";//  `CREATE_USER_ID`
    private String createUserName = "";// 创建人姓名
    private String city = "";//   `CITY`   '市',
    private String province = "";//   `PROVINCE`   '省',
    private String seller = ""; // `SELLER`   '卖方',
    private String sellerTaxNo = "";//  `SELLER_TAX_NO`   '卖方税号',
    private String sellerAddress = "";  //`SELLER_ADDRESS`   '卖方地址',
    private String sellerTel = "";// `SELLER_TEL`   '卖方电话',
    private String buyer = "";//  `BUYER`   '买房',
    private String buyerTaxNo = "";//   `BUYER_TAX_NO`   '买房税号',
    private String buyerAddress = "";//  `BUYER_ADDRESS`   '买房地址',
    private String buyerTel = "";//  `BUYER_TEL`   '买方电话',
    private String modelName = "";//  `MDOEL_NAME`   '机型',
    private String deviceType = "";//  `DEVICE_TYPE`   '设备类型',
    private String brandName = "";//   `BRAND_NAME`   '品牌',
    private String modelId = "";//  `MDOEL_NAME`   '机型ID',
    private String brandId = "";//   `BRAND_NAME`   '品牌id',
    private String serialNo = "";//  `SERIAL_NO`   '序列号',
    private String buyType = ""; //`BUY_TYPE`  '付款方式（ 全款 内部分期 融资 ）',
    private String currentAuditorId = "";  // `CURRENT_AUDITOR_ID`  '当前审核人ID',
    private String currentAuditorName = "";//    `CURRENT_AUDITOR_NAME`  '当前审核人姓名',
    private String sellerCompanyId = "";
    private String companyBankId = "";//公司开户行ID
    private String financeCompany = "";//融资公司
    private String qualityCompany = "";//质保公司
    private String authenticbrandsGroup = "";//品牌公司
    private String manufacturer = "";//制造公司
    private String auditFlag = "";// `AUDIT_FLAG`  '审核状态（-1草稿，0审核中，1通过，2驳回）',
    private String regionManagerName = "";//区域经理姓名
    private String regionManagerId = "";//区域经理ID
    private String dkFirstMoneydx = "";//垫款金额大写
    private String fqFirstMoneydx = "";//分期金额大写
    private String deliveryDate = "";//
    private String regionDirectorId = "";//
    private String regionDirectorName = "";//区域总监
    private String directorOfSalesId;//销售总监
    private String directorOfSalesName;//
    private String generalManagerId;//总经理
    private String generalManagerName;//
    private String regionId = "";//
    private String regionName = "";//
    private String bankName = "";//开户行
    private String bankCard = "";//银行卡号
    private String legalRepresentativeName = "";//
    private String legalRepresentativeTel = "";//
    private String actualCarBuyer = "";//
    private String actualCarBuyerTel = "";//
    private String deliveryAddress = "";//
    private String bigRegionManagerId = "";//
    private String bigRegionManagerName = "";//
    private String creditManagerName = "";//债权经理姓名
    private String creditManagerId = "";// 债权经理id
    private String dataOfficerId = "";// 数据专员ID
    private String dataOfficerName = "";// 数据专员姓名
    private String paymentTime = "";// 付款时间
    private String regionalSupportName = "";//区域支持Name
    private String regionalSupportId = "";//区域支持ID
    private String buyerId = "";//  `BUYER`   '买方ID',
    private Integer haveFQFirst = 0;//是否有分期的首付款分期
    private Integer carFlag = 0;//  `CAR_FLAG`  交车
    private Integer haveRepayment = 0;// 是否有垫款
    private Integer haveReplacement = 0;// 是否有置换
    private Integer haveUploadContract = 0;// 是否上传合同
    private Integer haveDelivery = 0;//是否交车？
    private Integer haveDsdf = 0;//是否代收代付
    private Integer haveSettle = 0;// 是否结清
    private Integer haveArrival = 0;// 是否到账
    private Integer contractType = 1;//1新机 2旧机
    private Integer haveOverdue = 0;// 是否逾期
    private Integer buyerType = 0;// 买方类型/-0-个人/-1-企业
    private BigDecimal haveAdvances = new BigDecimal("0.00");//垫款
    private BigDecimal salesPrice = new BigDecimal("0.00");//销售价格
    private BigDecimal dkFirstMoney = new BigDecimal("0.00");//垫款首付金额
    private BigDecimal fqFirstMoney = new BigDecimal("0.00");//分期首付金额
    private BigDecimal dkSumTotal = new BigDecimal("0.00");//本和合计的合计
    private BigDecimal dkSumPrincipal = new BigDecimal("0.00");//本金的合计
    private BigDecimal dkSumInterest = new BigDecimal("0.00");//利息的合计
    private BigDecimal fqSumTotal = new BigDecimal("0.00");//本和合计的合计
    private BigDecimal fqSumPrincipal = new BigDecimal("0.00");//本金的合计
    private BigDecimal fqSumInterest = new BigDecimal("0.00");//利息的合计
    private BigDecimal totalDownPayment = new BigDecimal("0.00");// 首付款总欠款
    private BigDecimal totalArrears = new BigDecimal("0.00");// 分期总欠款
    private BigDecimal totalCustomerArrears = new BigDecimal("0.00");// 客户总欠款合计
    private BigDecimal accumulatedRepaymentAmount = new BigDecimal("0.00");// 累计还款金额
    private BigDecimal arrearsRepaymentAmount = new BigDecimal("0.00");// 还款总欠款金额
    private BigDecimal paymentAmount = new BigDecimal("0.00");// 付款金额
    private BigDecimal fqFirsetSumPrincipal = new BigDecimal("0.00");// 分期首付款本金分期的和


    private String actualUser;//实际使用者
    private String actualUserTel;//联系电话
    private String sitePosition;//工地及位置
    private String deviceState;//设备使用状态
    private String takeOverManagerId;//接管区域经理Id
    private String takeOverManager;//接管区域经理
    private String financingRate;//融资利率
    private String customerCredit;//客户等级
    private Integer haveOverdueNo;//逾期天数
    private BigDecimal accountBalance=new BigDecimal("0.00");//账户余额

    private BigDecimal supRepayTotalAmount=new BigDecimal("0.00");//总欠款合计

    //免息申请相关字段
    private String interestFreeAuditFlag = ""; //免息申请状态
    private String interestFreeAuditName = ""; //免息申请审核人姓名
    private String interestFreeAuditId = ""; //免息申请审核人id
    private String applyName;//免息申请人
    private String applyNameId;//申请人id
    private String applyDepart;//申请部门
    private Date applyTime;//申请部门
    private Integer exempt;//是否免除了罚息


    public String getRepaymentType() {
        return repaymentType;
    }

    public void setRepaymentType(String repaymentType) {
        this.repaymentType = repaymentType;
    }

    public String getInterestFreeAuditFlag() {
        return interestFreeAuditFlag;
    }

    public void setInterestFreeAuditFlag(String interestFreeAuditFlag) {
        this.interestFreeAuditFlag = interestFreeAuditFlag;
    }

    public String getInterestFreeAuditName() {
        return interestFreeAuditName;
    }

    public void setInterestFreeAuditName(String interestFreeAuditName) {
        this.interestFreeAuditName = interestFreeAuditName;
    }

    public Date getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(Date applyTime) {
        this.applyTime = applyTime;
    }

    public String getInterestFreeAuditId() {
        return interestFreeAuditId;
    }

    public void setInterestFreeAuditId(String interestFreeAuditId) {
        this.interestFreeAuditId = interestFreeAuditId;
    }

    public String getDirectorOfSalesId() {
        return directorOfSalesId;
    }

    public void setDirectorOfSalesId(String directorOfSalesId) {
        this.directorOfSalesId = directorOfSalesId;
    }

    public String getDirectorOfSalesName() {
        return directorOfSalesName;
    }

    public void setDirectorOfSalesName(String directorOfSalesName) {
        this.directorOfSalesName = directorOfSalesName;
    }

    public String getGeneralManagerId() {
        return generalManagerId;
    }

    public void setGeneralManagerId(String generalManagerId) {
        this.generalManagerId = generalManagerId;
    }

    public String getGeneralManagerName() {
        return generalManagerName;
    }

    public void setGeneralManagerName(String generalManagerName) {
        this.generalManagerName = generalManagerName;
    }

    public Integer getHaveOverdueNo() {
        return haveOverdueNo;
    }

    public void setHaveOverdueNo(Integer haveOverdueNo) {
        this.haveOverdueNo = haveOverdueNo;
    }

    public String getCustomerCredit() {
        return customerCredit;
    }

    public void setCustomerCredit(String customerCredit) {
        this.customerCredit = customerCredit;
    }

    public String getActualUser() {
        return actualUser;
    }

    public void setActualUser(String actualUser) {
        this.actualUser = actualUser;
    }

    public String getActualUserTel() {
        return actualUserTel;
    }

    public void setActualUserTel(String actualUserTel) {
        this.actualUserTel = actualUserTel;
    }

    public String getSitePosition() {
        return sitePosition;
    }

    public void setSitePosition(String sitePosition) {
        this.sitePosition = sitePosition;
    }

    public String getDeviceState() {
        return deviceState;
    }

    public void setDeviceState(String deviceState) {
        this.deviceState = deviceState;
    }

    public String getTakeOverManager() {
        return takeOverManager;
    }

    public void setTakeOverManager(String takeOverManager) {
        this.takeOverManager = takeOverManager;
    }

    public String getFinancingRate() {
        return financingRate;
    }

    public void setFinancingRate(String financingRate) {
        this.financingRate = financingRate;
    }

    public String getCompanyBankId() {
        return companyBankId;
    }

    public void setCompanyBankId(String companyBankId) {
        this.companyBankId = companyBankId;
    }

    public String getBankName() {
        return bankName;
    }

    public void setBankName(String bankName) {
        this.bankName = bankName;
    }

    public String getBankCard() {
        return bankCard;
    }

    public void setBankCard(String bankCard) {
        this.bankCard = bankCard;
    }

    public BigDecimal getFqFirsetSumPrincipal() {
        return fqFirsetSumPrincipal;
    }

    public void setFqFirsetSumPrincipal(BigDecimal fqFirsetSumPrincipal) {
        this.fqFirsetSumPrincipal = fqFirsetSumPrincipal;
    }

    public Integer getHaveFQFirst() {
        return haveFQFirst;
    }

    public void setHaveFQFirst(Integer haveFQFirst) {
        this.haveFQFirst = haveFQFirst;
    }

    public String getFqFirstMoneydx() {
        return fqFirstMoneydx;
    }

    public void setFqFirstMoneydx(String fqFirstMoneydx) {
        this.fqFirstMoneydx = fqFirstMoneydx;
    }

    public BigDecimal getFqFirstMoney() {
        return fqFirstMoney;
    }

    public void setFqFirstMoney(BigDecimal fqFirstMoney) {
        this.fqFirstMoney = fqFirstMoney;
    }

    public Integer getBuyerType() {
        return buyerType;
    }

    public void setBuyerType(Integer buyerType) {
        this.buyerType = buyerType;
    }

    public String getRegionalSupportId() {
        return regionalSupportId;
    }

    public void setRegionalSupportId(String regionalSupportId) {
        this.regionalSupportId = regionalSupportId;
    }

    public String getRegionalSupportName() {
        return regionalSupportName;
    }

    public void setRegionalSupportName(String regionalSupportName) {
        this.regionalSupportName = regionalSupportName;
    }

    public Integer getHaveOverdue() {
        return haveOverdue;
    }

    public void setHaveOverdue(Integer haveOverdue) {
        this.haveOverdue = haveOverdue;
    }

    public String getCreditManagerName() {
        return creditManagerName;
    }

    public void setCreditManagerName(String creditManagerName) {
        this.creditManagerName = creditManagerName;
    }

    public String getCreditManagerId() {
        return creditManagerId;
    }

    public void setCreditManagerId(String creditManagerId) {
        this.creditManagerId = creditManagerId;
    }

    public String getDataOfficerId() {
        return dataOfficerId;
    }

    public void setDataOfficerId(String dataOfficerId) {
        this.dataOfficerId = dataOfficerId;
    }

    public String getDataOfficerName() {
        return dataOfficerName;
    }

    public void setDataOfficerName(String dataOfficerName) {
        this.dataOfficerName = dataOfficerName;
    }

    public BigDecimal getPaymentAmount() {
        return paymentAmount;
    }

    public void setPaymentAmount(BigDecimal paymentAmount) {
        this.paymentAmount = paymentAmount;
    }

    public Integer getHaveSettle() {
        return haveSettle;
    }

    public void setHaveSettle(Integer haveSettle) {
        this.haveSettle = haveSettle;
    }

    public String getPaymentTime() {
        return paymentTime;
    }

    public void setPaymentTime(String paymentTime) {
        this.paymentTime = paymentTime;
    }

    public Integer getHaveArrival() {
        return haveArrival;
    }

    public void setHaveArrival(Integer haveArrival) {
        this.haveArrival = haveArrival;
    }

    public BigDecimal getTotalDownPayment() {
        return totalDownPayment;
    }

    public void setTotalDownPayment(BigDecimal totalDownPayment) {
        this.totalDownPayment = totalDownPayment;
    }

    public BigDecimal getTotalArrears() {
        return totalArrears;
    }

    public void setTotalArrears(BigDecimal totalArrears) {
        this.totalArrears = totalArrears;
    }

    public BigDecimal getTotalCustomerArrears() {
        return totalCustomerArrears;
    }

    public void setTotalCustomerArrears(BigDecimal totalCustomerArrears) {
        this.totalCustomerArrears = totalCustomerArrears;
    }

    public BigDecimal getArrearsRepaymentAmount() {
        return arrearsRepaymentAmount;
    }

    public void setArrearsRepaymentAmount(BigDecimal arrearsRepaymentAmount) {
        this.arrearsRepaymentAmount = arrearsRepaymentAmount;
    }

    public BigDecimal getAccumulatedRepaymentAmount() {
        return accumulatedRepaymentAmount;
    }

    public void setAccumulatedRepaymentAmount(BigDecimal accumulatedRepaymentAmount) {
        this.accumulatedRepaymentAmount = accumulatedRepaymentAmount;
    }

    public Integer getHaveDelivery() {
        return haveDelivery;
    }

    public void setHaveDelivery(Integer haveDelivery) {
        this.haveDelivery = haveDelivery;
    }

    public String getDeliveryDate() {
        return deliveryDate;
    }

    public void setDeliveryDate(String deliveryDate) {
        this.deliveryDate = deliveryDate;
    }

    public String getRegionDirectorId() {
        return regionDirectorId;
    }

    public void setRegionDirectorId(String regionDirectorId) {
        this.regionDirectorId = regionDirectorId;
    }

    public String getRegionDirectorName() {
        return regionDirectorName;
    }

    public void setRegionDirectorName(String regionDirectorName) {
        this.regionDirectorName = regionDirectorName;
    }

    public String getRegionId() {
        return regionId;
    }

    public void setRegionId(String regionId) {
        this.regionId = regionId;
    }

    public String getRegionName() {
        return regionName;
    }

    public void setRegionName(String regionName) {
        this.regionName = regionName;
    }

    public String getLegalRepresentativeName() {
        return legalRepresentativeName;
    }

    public void setLegalRepresentativeName(String legalRepresentativeName) {
        this.legalRepresentativeName = legalRepresentativeName;
    }

    public String getLegalRepresentativeTel() {
        return legalRepresentativeTel;
    }

    public void setLegalRepresentativeTel(String legalRepresentativeTel) {
        this.legalRepresentativeTel = legalRepresentativeTel;
    }

    public String getActualCarBuyer() {
        return actualCarBuyer;
    }

    public void setActualCarBuyer(String actualCarBuyer) {
        this.actualCarBuyer = actualCarBuyer;
    }

    public String getActualCarBuyerTel() {
        return actualCarBuyerTel;
    }

    public void setActualCarBuyerTel(String actualCarBuyerTel) {
        this.actualCarBuyerTel = actualCarBuyerTel;
    }

    public String getDeliveryAddress() {
        return deliveryAddress;
    }

    public void setDeliveryAddress(String deliveryAddress) {
        this.deliveryAddress = deliveryAddress;
    }

    public String getBigRegionManagerId() {
        return bigRegionManagerId;
    }

    public void setBigRegionManagerId(String bigRegionManagerId) {
        this.bigRegionManagerId = bigRegionManagerId;
    }

    public String getBigRegionManagerName() {
        return bigRegionManagerName;
    }

    public void setBigRegionManagerName(String bigRegionManagerName) {
        this.bigRegionManagerName = bigRegionManagerName;
    }

    public String getDkFirstMoneydx() {
        return dkFirstMoneydx;
    }

    public void setDkFirstMoneydx(String dkFirstMoneydx) {
        this.dkFirstMoneydx = dkFirstMoneydx;
    }

    public BigDecimal getDkSumTotal() {
        return dkSumTotal;
    }

    public void setDkSumTotal(BigDecimal dkSumTotal) {
        this.dkSumTotal = dkSumTotal;
    }

    public BigDecimal getDkSumPrincipal() {
        return dkSumPrincipal;
    }

    public void setDkSumPrincipal(BigDecimal dkSumPrincipal) {
        this.dkSumPrincipal = dkSumPrincipal;
    }

    public BigDecimal getDkSumInterest() {
        return dkSumInterest;
    }

    public void setDkSumInterest(BigDecimal dkSumInterest) {
        this.dkSumInterest = dkSumInterest;
    }

    public BigDecimal getFqSumTotal() {
        return fqSumTotal;
    }

    public void setFqSumTotal(BigDecimal fqSumTotal) {
        this.fqSumTotal = fqSumTotal;
    }

    public BigDecimal getFqSumPrincipal() {
        return fqSumPrincipal;
    }

    public void setFqSumPrincipal(BigDecimal fqSumPrincipal) {
        this.fqSumPrincipal = fqSumPrincipal;
    }

    public BigDecimal getFqSumInterest() {
        return fqSumInterest;
    }

    public void setFqSumInterest(BigDecimal fqSumInterest) {
        this.fqSumInterest = fqSumInterest;
    }

    public String getRegionManagerId() {
        return regionManagerId;
    }

    public void setRegionManagerId(String regionManagerId) {
        this.regionManagerId = regionManagerId;
    }

    public String getRegionManagerName() {
        return regionManagerName;
    }

    public void setRegionManagerName(String regionManagerName) {
        this.regionManagerName = regionManagerName;
    }

    public BigDecimal getDkFirstMoney() {
        return dkFirstMoney;
    }

    public void setDkFirstMoney(BigDecimal dkFirstMoney) {
        this.dkFirstMoney = dkFirstMoney;
    }

    public Integer getHaveUploadContract() {
        return haveUploadContract;
    }

    public void setHaveUploadContract(Integer haveUploadContract) {
        this.haveUploadContract = haveUploadContract;
    }

    public BigDecimal getSalesPrice() {
        return salesPrice;
    }

    public void setSalesPrice(BigDecimal salesPrice) {
        this.salesPrice = salesPrice;
    }

    public Integer getHaveRepayment() {
        return haveRepayment;
    }

    public void setHaveRepayment(Integer haveRepayment) {
        this.haveRepayment = haveRepayment;
    }

    public Integer getHaveReplacement() {
        return haveReplacement;
    }

    public void setHaveReplacement(Integer haveReplacement) {
        this.haveReplacement = haveReplacement;
    }

    public String getAuthenticbrandsGroup() {
        return authenticbrandsGroup;
    }

    public void setAuthenticbrandsGroup(String authenticbrandsGroup) {
        this.authenticbrandsGroup = authenticbrandsGroup;
    }

    public String getSellerCompanyId() {
        return sellerCompanyId;
    }

    public void setSellerCompanyId(String sellerCompanyId) {
        this.sellerCompanyId = sellerCompanyId;
    }

    public String getFinanceCompany() {
        return financeCompany;
    }

    public void setFinanceCompany(String financeCompany) {
        this.financeCompany = financeCompany;
    }

    public String getQualityCompany() {
        return qualityCompany;
    }

    public void setQualityCompany(String qualityCompany) {
        this.qualityCompany = qualityCompany;
    }

    public String getManufacturer() {
        return manufacturer;
    }

    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }

    public String getContractNo() {
        return contractNo;
    }

    public void setContractNo(String contractNo) {
        this.contractNo = contractNo;
    }

    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getSeller() {
        return seller;
    }

    public void setSeller(String seller) {
        this.seller = seller;
    }

    public String getSellerTaxNo() {
        return sellerTaxNo;
    }

    public void setSellerTaxNo(String sellerTaxNo) {
        this.sellerTaxNo = sellerTaxNo;
    }

    public String getSellerAddress() {
        return sellerAddress;
    }

    public void setSellerAddress(String sellerAddress) {
        this.sellerAddress = sellerAddress;
    }

    public String getSellerTel() {
        return sellerTel;
    }

    public void setSellerTel(String sellerTel) {
        this.sellerTel = sellerTel;
    }

    public String getBuyer() {
        return buyer;
    }

    public void setBuyer(String buyer) {
        this.buyer = buyer;
    }

    public String getBuyerTaxNo() {
        return buyerTaxNo;
    }

    public void setBuyerTaxNo(String buyerTaxNo) {
        this.buyerTaxNo = buyerTaxNo;
    }

    public String getBuyerAddress() {
        return buyerAddress;
    }

    public void setBuyerAddress(String buyerAddress) {
        this.buyerAddress = buyerAddress;
    }

    public String getBuyerTel() {
        return buyerTel;
    }

    public void setBuyerTel(String buyerTel) {
        this.buyerTel = buyerTel;
    }

    public String getModelName() {
        return modelName;
    }

    public void setModelName(String modelName) {
        this.modelName = modelName;
    }

    public String getDeviceType() {
        return deviceType;
    }

    public void setDeviceType(String deviceType) {
        this.deviceType = deviceType;
    }

    public String getBrandName() {
        return brandName;
    }

    public void setBrandName(String brandName) {
        this.brandName = brandName;
    }

    public String getSerialNo() {
        return serialNo;
    }

    public void setSerialNo(String serialNo) {
        this.serialNo = serialNo;
    }

    public String getAuditFlag() {
        return auditFlag;
    }

    public void setAuditFlag(String auditFlag) {
        this.auditFlag = auditFlag;
    }

    public Integer getCarFlag() {
        return carFlag;
    }

    public void setCarFlag(Integer carFlag) {
        this.carFlag = carFlag;
    }

    public String getBuyType() {
        return buyType;
    }

    public void setBuyType(String buyType) {
        this.buyType = buyType;
    }

    public String getCurrentAuditorId() {
        return currentAuditorId;
    }

    public void setCurrentAuditorId(String currentAuditorId) {
        this.currentAuditorId = currentAuditorId;
    }

    public String getCurrentAuditorName() {
        return currentAuditorName;
    }

    public void setCurrentAuditorName(String currentAuditorName) {
        this.currentAuditorName = currentAuditorName;
    }

    public BigDecimal getHaveAdvances() {
        return haveAdvances;
    }

    public void setHaveAdvances(BigDecimal haveAdvances) {
        this.haveAdvances = haveAdvances;
    }

    public String getCreateUserName() {
        return createUserName;
    }

    public void setCreateUserName(String createUserName) {
        this.createUserName = createUserName;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public String getModelId() {
        return modelId;
    }

    public void setModelId(String modelId) {
        this.modelId = modelId;
    }

    public String getBrandId() {
        return brandId;
    }

    public void setBrandId(String brandId) {
        this.brandId = brandId;
    }

    public Integer getContractType() {
        return contractType;
    }

    public void setContractType(Integer contractType) {
        this.contractType = contractType;
    }

    public String getBuyerId() {
        return buyerId;
    }

    public void setBuyerId(String buyerId) {
        this.buyerId = buyerId;
    }

    public Integer getHaveDsdf() {
        return haveDsdf;
    }

    public void setHaveDsdf(Integer haveDsdf) {
        this.haveDsdf = haveDsdf;
    }

    public String getTakeOverManagerId() {
        return takeOverManagerId;
    }

    public void setTakeOverManagerId(String takeOverManagerId) {
        this.takeOverManagerId = takeOverManagerId;
    }

    public BigDecimal getSupRepayTotalAmount() {
        return supRepayTotalAmount;
    }

    public void setSupRepayTotalAmount(BigDecimal supRepayTotalAmount) {
        this.supRepayTotalAmount = supRepayTotalAmount;
    }

    public BigDecimal getAccountBalance() {
        return accountBalance;
    }

    public void setAccountBalance(BigDecimal accountBalance) {
        this.accountBalance = accountBalance;
    }

    public String getApplyName() {
        return applyName;
    }

    public void setApplyName(String applyName) {
        this.applyName = applyName;
    }

    public String getApplyNameId() {
        return applyNameId;
    }

    public void setApplyNameId(String applyNameId) {
        this.applyNameId = applyNameId;
    }

    public String getApplyDepart() {
        return applyDepart;
    }

    public void setApplyDepart(String applyDepart) {
        this.applyDepart = applyDepart;
    }

    public Integer getExempt() {
        return exempt;
    }

    public void setExempt(Integer exempt) {
        this.exempt = exempt;
    }

    @Override
    public JSONObject getJSONObject() {
        JSONObject obj = new JSONObject();
        obj.put("ID", getId());
        obj.put("CONTRACT_NO", getContractNo());
        obj.put("CREATE_USER_ID", getCreateUserId());
        obj.put("CREATE_TIME", getCreateTime());
        obj.put("CITY", getCity());
        obj.put("BRAND_NAME", getBrandName());
        obj.put("SELLER", getSeller());
        obj.put("SELLER_TAX_NO", getSellerTaxNo());
        obj.put("SELLER_ADDRESS", getSellerAddress());
        obj.put("SELLER_TEL", getSellerTel());
        obj.put("BUYER", getBuyer());
        obj.put("BUYER_TAX_NO", getBuyerTaxNo());
        obj.put("BUYER_ADDRESS", getBuyerAddress());
        obj.put("BUYER_TEL", getBuyerTel());
        obj.put("MANUFACTURER", getManufacturer());
        obj.put("FINANCE_COMPANY", getFinanceCompany());
        obj.put("QUALITY_COMPANY", this.getQualityCompany());
        obj.put("MODEL_NAME", getModelName());
        obj.put("DEVICE_TYPE", getDeviceType());
        obj.put("SERIAL_NO", getSerialNo());
        obj.put("BUY_TYPE", getBuyType());
        obj.put("AUDIT_FLAG", getAuditFlag());
        obj.put("CURRENT_AUDITOR_ID", getCurrentAuditorId());
        obj.put("CURRENT_AUDITOR_NAME", getCurrentAuditorName());
        obj.put("CAR_FLAG", getCarFlag());
        obj.put("SELLER_COMPANY_ID", getSellerCompanyId());
        obj.put("AUTHENTICBRANDS_GROUP", getAuthenticbrandsGroup());
        obj.put("HAVE_REPAYMENT", getHaveRepayment());
        obj.put("HAVE_REPLACEMENT", getHaveReplacement());
        obj.put("HAVE_ADVANCES", getHaveAdvances());
        obj.put("HAVE_UPLOAD_CONTRACT", getHaveUploadContract());
        obj.put("SALES_PRICE", getSalesPrice());
        obj.put("CREATE_USER_NAME", getCreateUserName());
        obj.put("DK_FIRST_MONEY", getDkFirstMoney());
        obj.put("FQ_FIRST_MONEY", getFqFirstMoney());
        obj.put("REGION_MANAGER_NAME", getRegionManagerName());
        obj.put("REGION_MANAGER_ID", getRegionManagerId());
        obj.put("DK_SUM_TOTAL", getDkSumTotal());
        obj.put("DK_SUM_PRINCIPAL", getDkSumPrincipal());
        obj.put("DK_SUM_INTEREST", getDkSumInterest());
        obj.put("FQ_SUM_TOTAL", getFqSumTotal());
        obj.put("FQ_SUM_PRINCIPAL", getFqSumPrincipal());
        obj.put("FQ_SUM_INTEREST", getFqSumInterest());
        obj.put("PROVINCE", getProvince());
        obj.put("BRAND_ID", getBrandId());
        obj.put("MODEL_ID", getModelId());
        obj.put("DK_FIRST_MONEYDX", getDkFirstMoneydx());
        obj.put("FQ_FIRST_MONEYDX", getFqFirstMoneydx());
        obj.put("HAVE_DELIVERY", getHaveDelivery());
        obj.put("DELIVERY_DATE", getDeliveryDate());
        obj.put("REGION_DIRECTOR_ID", getRegionDirectorId());
        obj.put("REGION_DIRECTOR_NAME", getRegionDirectorName());
        obj.put("REGION_ID", getRegionId());
        obj.put("REGION_NAME", getRegionName());
        obj.put("LEGAL_REPRESENTATIVE_NAME", getLegalRepresentativeName());
        obj.put("LEGAL_REPRESENTATIVE_TEL", getLegalRepresentativeTel());
        obj.put("ACTUAL_CAR_BUYER", getActualCarBuyer());
        obj.put("ACTUAL_CAR_BUYER_TEL", getActualCarBuyerTel());
        obj.put("DELIVERY_ADDRESS", getDeliveryAddress());
        obj.put("BIG_REGION_MANAGER_ID", getBigRegionManagerId());
        obj.put("BIG_REGION_MANAGER_NAME", getBigRegionManagerName());
        obj.put("CONTRACT_TYPE", getContractType());
        obj.put("BUYER_ID", getBuyerId());
        obj.put("HAVE_OVERDUE", getHaveOverdue());
        obj.put("CREDIT_MANAGER_NAME", getCreditManagerName());
        obj.put("CREDIT_MANAGER_ID", getCreditManagerId());
        obj.put("DATA_OFFICER_ID", getDataOfficerId());
        obj.put("DATA_OFFICER_NAME", getDataOfficerName());
        obj.put("PAYMENT_AMOUNT", getPaymentAmount());
        obj.put("HAVE_SETTLE", getHaveSettle());
        obj.put("PAYMENT_TIME", getPaymentTime());
        obj.put("HAVE_ARRIVAL", getHaveArrival());
        obj.put("TOTAL_DOWN_PAYMENT", getTotalDownPayment());
        obj.put("TOTAL_ARREARS", getTotalArrears());
        obj.put("TOTAL_CUSTOMER_ARREARS", getTotalCustomerArrears());
        obj.put("ACCUMULATED_REPAYMENT_AMOUNT", getAccumulatedRepaymentAmount());
        obj.put("REGIONAL_SUPPORT_ID", getRegionalSupportId());
        obj.put("REGIONAL_SUPPORT_NAME", getRegionalSupportName());
        obj.put("BUYER_TYPE", getBuyerType());
        obj.put("HAVE_FQ_First", getHaveFQFirst());
        obj.put("FQ_FIRSET_SUM_PRINCIPAL", getFqFirsetSumPrincipal());
        obj.put("HAVE_DSDF", getHaveDsdf());
        obj.put("BANK_NAME", getBankName());
        obj.put("BANK_CARD", getBankCard());
        obj.put("COMPANY_BANK_ID", getCompanyBankId());
        obj.put("ACTUAL_USER", getActualUser());
        obj.put("ARREARS_REPAYMENT_AMOUNT", getArrearsRepaymentAmount());
        obj.put("ACTUAL_USER_TEL", getActualUserTel());
        obj.put("SITE_POSITION", getSitePosition());
        obj.put("DEVICE_STATE", getDeviceState());
        obj.put("TAKE_OVER_MANAGER_ID", getTakeOverManagerId());
        obj.put("TAKE_OVER_MANAGER", getTakeOverManager());
        obj.put("FINANCING_RATE", getFinancingRate());
        obj.put("CUSTOMER_CREDIT", getCustomerCredit());
        obj.put("HAVE_OVERDUE_NO", getHaveOverdueNo());
        obj.put("UPDATE_USER_ID", getUpdateUserId());
        obj.put("UPDATE_TIME", getUpdateTime());
        obj.put("SUP_REPAY_TOTAL_AMOUNT", getSupRepayTotalAmount());
        obj.put("ACCOUNT_BALANCE", getAccountBalance());
        obj.put("DIRECTOR_OF_SALES_ID", getDirectorOfSalesId());
        obj.put("DIRECTOR_OF_SALES_NAME", getDirectorOfSalesName());
        obj.put("GENERAL_MANAGER_ID", getGeneralManagerId());
        obj.put("GENERAL_MANAGER_NAME", getGeneralManagerName());
        obj.put("INTEREST_FREE_AUDIT_FLAG",getInterestFreeAuditFlag());
        obj.put("INTEREST_FREE_AUDIT_NAME",getInterestFreeAuditName() );
        obj.put("INTEREST_FREE_AUDIT_ID",getInterestFreeAuditId());
        obj.put("APPLY_NAME",getApplyName());
        obj.put("APPLY_DEPART",getApplyDepart());
        obj.put("APPLY_NAME_ID",getApplyNameId());
        obj.put("APPLY_TIME",getApplyTime());
        obj.put("EXEMPT",getExempt());
        obj.put("REPAYMENT_TYPE",getRepaymentType());
        return obj;
    }

    @Override
    public String getTableName() {
        return "t_con_main";
    }

    @Override
    public JSONObject getJSONColumns() {
        JSONObject obj = new JSONObject();
        obj.put("ID", "id");
        obj.put("CONTRACT_NO", "contractNo");
        obj.put("CREATE_USER_ID", "createUserId");
        obj.put("CREATE_TIME", "createTime");
        obj.put("CITY", "city");
        obj.put("BRAND_NAME", "brandName");
        obj.put("SELLER", "seller");
        obj.put("SELLER_TAX_NO", "sellerTaxNo");
        obj.put("SELLER_ADDRESS", "sellerAddress");
        obj.put("SELLER_TEL", "sellerTel");
        obj.put("BUYER", "buyer");
        obj.put("MANUFACTURER", "manufacturer");
        obj.put("QUALITY_COMPANY", "qualityCompany");
        obj.put("FINANCE_COMPANY", "financeCompany");
        obj.put("BUYER_TAX_NO", "buyerTaxNo");
        obj.put("BUYER_ADDRESS", "buyerAddress");
        obj.put("BUYER_TEL", "buyerTel");
        obj.put("MODEL_NAME", "modelName");
        obj.put("DEVICE_TYPE", "deviceType");
        obj.put("SERIAL_NO", "serialNo");
        obj.put("BUY_TYPE", "buyType");
        obj.put("AUDIT_FLAG", "auditFlag");
        obj.put("CURRENT_AUDITOR_ID", "currentAuditorId");
        obj.put("CURRENT_AUDITOR_NAME", "currentAuditorName");
        obj.put("CAR_FLAG", "carFlag");
        obj.put("SELLER_COMPANY_ID", "sellerCompanyId");
        obj.put("AUTHENTICBRANDS_GROUP", "authenticbrandsGroup");
        obj.put("HAVE_REPAYMENT", "haveRepayment");
        obj.put("HAVE_REPLACEMENT", "haveReplacement");
        obj.put("HAVE_ADVANCES", "haveAdvances");
        obj.put("HAVE_UPLOAD_CONTRACT", "haveUploadContract");
        obj.put("SALES_PRICE", "salesPrice");
        obj.put("CREATE_USER_NAME", "createUserName");
        obj.put("DK_FIRST_MONEY", "dkFirstMoney");
        obj.put("FQ_FIRST_MONEY", "fqFirstMoney");
        obj.put("REGION_MANAGER_NAME", "regionManagerName");
        obj.put("REGION_MANAGER_ID", "regionManagerId");
        obj.put("DK_SUM_TOTAL", "dkSumTotal");
        obj.put("DK_SUM_PRINCIPAL", "dkSumPrincipal");
        obj.put("DK_SUM_INTEREST", "dkSumInterest");
        obj.put("FQ_SUM_TOTAL", "fqSumTotal");
        obj.put("FQ_SUM_PRINCIPAL", "fqSumPrincipal");
        obj.put("FQ_SUM_INTEREST", "fqSumInterest");
        obj.put("PROVINCE", "province");
        obj.put("BRAND_ID", "brandId");
        obj.put("MODEL_ID", "modelId");
        obj.put("DK_FIRST_MONEYDX", "dkFirstMoneydx");
        obj.put("FQ_FIRST_MONEYDX", "fqFirstMoneydx");
        obj.put("HAVE_DELIVERY", "haveDelivery");
        obj.put("DELIVERY_DATE", "deliveryDate");
        obj.put("REGION_DIRECTOR_ID", "regionDirectorId");
        obj.put("REGION_DIRECTOR_NAME", "regionDirectorName");
        obj.put("REGION_ID", "regionId");
        obj.put("REGION_NAME", "regionName");
        obj.put("LEGAL_REPRESENTATIVE_NAME", "legalRepresentativeName");
        obj.put("LEGAL_REPRESENTATIVE_TEL", "legalRepresentativeTel");
        obj.put("ACTUAL_CAR_BUYER", "actualCarBuyer");
        obj.put("ACTUAL_CAR_BUYER_TEL", "actualCarBuyerTel");
        obj.put("DELIVERY_ADDRESS", "deliveryAddress");
        obj.put("BIG_REGION_MANAGER_ID", "bigRegionManagerId");
        obj.put("BIG_REGION_MANAGER_NAME", "bigRegionManagerName");
        obj.put("CONTRACT_TYPE", "contractType");
        obj.put("ARREARS_REPAYMENT_AMOUNT", "arrearsRepaymentAmount");
        obj.put("BUYER_ID", "buyerId");
        obj.put("HAVE_OVERDUE", "haveOverdue");
        obj.put("CREDIT_MANAGER_NAME", "creditManagerName");
        obj.put("CREDIT_MANAGER_ID", "creditManagerId");
        obj.put("DATA_OFFICER_ID", "dataOfficerId");
        obj.put("DATA_OFFICER_NAME", "dataOfficerName");
        obj.put("PAYMENT_AMOUNT", "paymentAmount");
        obj.put("HAVE_SETTLE", "haveSettle");
        obj.put("PAYMENT_TIME", "paymentTime");
        obj.put("HAVE_ARRIVAL", "haveArrival");
        obj.put("TOTAL_DOWN_PAYMENT", "totalDownPayment");
        obj.put("TOTAL_ARREARS", "totalArrears");
        obj.put("TOTAL_CUSTOMER_ARREARS", "totalCustomerArrears");
        obj.put("ACCUMULATED_REPAYMENT_AMOUNT", "accumulatedRepaymentAmount");
        obj.put("REGIONAL_SUPPORT_ID", "regionalSupportId");
        obj.put("REGIONAL_SUPPORT_NAME", "regionalSupportName");
        obj.put("BUYER_TYPE", "buyerType");
        obj.put("HAVE_FQ_First", "haveFQFirst");
        obj.put("FQ_FIRSET_SUM_PRINCIPAL", "fqFirsetSumPrincipal");
        obj.put("HAVE_DSDF", "haveDsdf");
        obj.put("BANK_NAME", "bankName");
        obj.put("BANK_CARD", "bankCard");
        obj.put("COMPANY_BANK_ID", "companyBankId");
        obj.put("ACTUAL_USER", "actualUser");
        obj.put("ACTUAL_USER_TEL", "actualUserTel");
        obj.put("SITE_POSITION", "sitePosition");
        obj.put("DEVICE_STATE", "deviceState");
        obj.put("TAKE_OVER_MANAGER", "takeOverManager");
        obj.put("TAKE_OVER_MANAGER_ID", "takeOverManagerId");
        obj.put("FINANCING_RATE", "financingRate");
        obj.put("CUSTOMER_CREDIT", "customerCredit");
        obj.put("HAVE_OVERDUE_NO", "haveOverdueNo");
        obj.put("UPDATE_USER_ID", "updateUserId");
        obj.put("UPDATE_TIME", "updateTime");
        obj.put("SUP_REPAY_TOTAL_AMOUNT", "supRepayTotalAmount");
        obj.put("ACCOUNT_BALANCE", "accountBalance");
        obj.put("DIRECTOR_OF_SALES_ID", "directorOfSalesId");
        obj.put("DIRECTOR_OF_SALES_NAME","directorOfSalesName");
        obj.put("GENERAL_MANAGER_ID", "generalManagerIId");
        obj.put("GENERAL_MANAGER_NAME","generalManagerName");
        obj.put("INTEREST_FREE_AUDIT_FLAG","interestFreeAuditFlag");
        obj.put("INTEREST_FREE_AUDIT_NAME", "interestFreeAuditName");
        obj.put("INTEREST_FREE_AUDIT_ID","interestFreeAuditId");
        obj.put("APPLY_NAME","applyName");
        obj.put("APPLY_DEPART","applyDepart");
        obj.put("APPLY_NAME_ID","applyNameId");
        obj.put("APPLY_TIME","applyTime");
        obj.put("EXEMPT","exempt");
        obj.put("REPAYMENT_TYPE","repaymentType");

        return obj;
    }
}